<?php
class Front_Form_Oubli extends Jnd_Form
{

    public function __construct( $decorateur = "Formulairejndpro", $options = null )
    {
        parent::__construct($decorateur, $options);
        $this->setElementDecorators(array(
            "$decorateur"
        ), array(), false);
    }

    public function init()
    {
        $this->setName("oubli");
        $this->setAction("/accueil/jaioublie");
        $this->setMethod("post");
        $this->addAttribs(array(
            "class" => "cssform"
        ));
        
        $champ = new Zend_Form_Element_Text("pseudo");
        $champ->setLabel(__("Pseudo"));
        $champ->setDescription(__("Merci d'indiquer le pseudo utilisé pour l'enregistrement de votre compte."));
        $champ->setRequired(true);
        $champs[] = $champ;
        
        $champ = new Zend_Form_Element_Text("mail");
        $champ->setLabel(__("Email"));
        $champ->setDescription(__("Merci d'indiquer l'email utilisé pour l'enregistrement de votre compte."));
        $champ->setRequired(true);
        $champs[] = $champ;
        
        $this->addElements($champs);
    }

    /**
     * On contrôle que le mot de passe fournie soit bien celui du compte en
     * question
     *
     * @see Zend_Form::isValid()
     */
    public function isValid( $data )
    {
        $valid = parent::isValid($data);
        if (! $valid) {
            return false;
        }
        
        $pseudo = $data['pseudo'];
        $mail = $data['mail'];

        $valid = Back_Model_Utilisateurs::controleCouplePseudoMail($mail, $pseudo);
        if (!$valid) {
            $this->getElement("pseudo")->addError(sprintf(__("Le couple '%s'/'%s' n'existe pas en base de données"), $pseudo, $mail));
        }
        return $valid;
    }
}

